Interactive cord

ABSTRACT

This document describes interactive cords. An interactive cord includes a cable, and fabric cover that covers the cable. The fabric cover includes one or more conductive threads woven into the fabric cover to form one or more capacitive touchpoints which are configured to enable reception of touch input that causes a change in capacitance to the one or more conductive threads. A controller, implemented at the interactive cord or a computing device coupled to the interactive cord, can detect the change in capacitance and trigger one or more functions associated with the one or more capacitive touchpoints. For example, when implemented as a cord for a headset, the controller can control audio to the headset, such as by playing the audio, pausing the audio, adjusting the volume of the audio, skipping ahead in the audio, skipping backwards in the audio, skipping to additional audio, and so forth.

RELATED APPLICATIONS

This application is a continuation of and claims priority to U.S. patent application Ser. No. 15/206,941, filed Jul. 11, 2016, which claims priority to U.S. Provisional Patent Application No. 62/238,536, filed Oct. 7, 2015, entitled “Interactive Cord,” the disclosure of which is incorporated by reference in its entirety.

BACKGROUND

In-line controls for cords are standard and ubiquitous for devices such as earbuds or headphones for music players, cellular phone usage, and so forth. Similar in-line controls are also used by cords for household appliances and lighting, such as clocks, lamps, radios, fans, and so forth. Generally, such in-line controls utilize unfashionable hardware buttons attached to the cord which can break after extended use of the cord. Conventional in-line controls also have problems with intrusion due to sweat and skin, which can lead to corrosion of internal controls and electrical shorts. Further, the hardware design of in-line controls limits the overall expressiveness of the interface, in that increasing the amount of controls requires more hardware, leading to more bulk and cost.

SUMMARY

This document describes interactive cords. An interactive cord includes a cable, and fabric cover that covers the cable. The fabric cover includes one or more conductive threads woven into the fabric cover to form one or more capacitive touchpoints which are configured to enable reception of touch input that causes a change in capacitance to the one or more conductive threads. A controller, implemented at the interactive cord or a computing device coupled to the interactive cord, can detect the change in capacitance and trigger one or more functions associated with the one or more capacitive touchpoints. For example, when implemented as a cord for a headset, the controller can control audio to the headset, such as by playing the audio, pausing the audio, adjusting the volume of the audio, skipping ahead in the audio, skipping backwards in the audio, skipping to additional audio, and so forth.

In one or more implementations, the fabric cover acts as an RF shield for the cable, thereby reducing the need to manufacture the cord with a separate RF shield. Doing so reduces the cost and complexity of manufacturing the interactive cord.

In one or more implementations, the interactive cord can be used to authenticate a user. For example, rather than using a password entered into a computing device, a touch input pattern or sequence can be provided to interactive cord that is coupled to the computing device to authenticate the user.

In one or more implementations, the fabric cover of the interactive cord includes conductive threads that form a “touchpad”. The touchpad can sense taps, touches, and holds, as well as various gestures, such as swiping up, down, left, or right on the fabric cover of the interactive cord. To form a touchpad on the fabric cover, the conductive threads are braided around the cable in at least two different directions to form crossing sensing lines. For example, one or more first conductive threads are braided in a first direction around cable, and one or more second conductive threads are braided around cable in a second direction that crosses the first direction. As described throughout, the controller is configured to detect touch input to the fabric cover, and to initiate one or more functions based on the touch input.

This summary is provided to introduce simplified concepts concerning an interactive cord, which is further described below in the Detailed Description. This summary is not intended to identify essential features of the claimed subject matter, nor is it intended for use in determining the scope of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of techniques and devices for an interactive cord are described with reference to the following drawings. The same numbers are used throughout the drawings to reference like features and components:

FIG. 1 is an illustration of an example environment in which techniques using, and objects including, an interactive cord may be implemented.

FIG. 2 illustrates additional environments in which an interactive cord may be implemented.

FIG. 3 illustrates an example of a conductive thread in accordance with one or more implementations.

FIG. 4 illustrates examples of a fabric cover in accordance with one or more implementations.

FIG. 5 illustrates an example system configured to detect touch input to a capacitive touchpoint of a fabric cover.

FIG. 6 illustrates examples of providing touch input to a fabric cover of an interactive cord in accordance with one or more implementations.

FIG. 7 illustrates an example system for using an interactive cord to authenticate a user.

FIG. 8 illustrates an example of a fabric cover that includes a touchpad

FIG. 9 illustrates an example method of triggering a function based on touch input to a capacitive touchpoint of an interactive cord.

FIG. 10 illustrates an example method of controlling audio to a headset based on touch input to an interactive cord of the headset.

FIG. 11 illustrates an example method of authenticating a user based on a touch input pattern provided to an interactive cord.

FIG. 12 illustrates various components of an example computing system that can be implemented as any type of client, server, and/or computing device as described with reference to the previous FIGS. 1-10 to implement an interactive cord.

DETAILED DESCRIPTION

Overview

This document describes interactive cords. An interactive cord includes a cable, and fabric cover that covers the cable. The interactive cord may be implemented as a variety of different types of cords, such as a cord for headphones, earbuds, data transfer, lamps, clocks, radios, fans, and so forth. The fabric cover includes one or more conductive threads woven into the fabric cover to form one or more capacitive touchpoints which are configured to enable reception of touch input that causes a change in capacitance to the one or more conductive threads. A controller, implemented at the interactive cord or a computing device coupled to the interactive cord, can detect the change in capacitance and trigger one or more functions associated with the one or more capacitive touchpoints. For example, when implemented as a cord for a headset (e.g., headphones or ear buds), the controller can control audio to the headset, such as by playing the audio, pausing the audio, adjusting the volume of the audio, skipping ahead in the audio, skipping backwards in the audio, skipping to additional audio, and so forth.

Creating an interactive cord with capacitive touchpoints integrated into the fabric cover eliminates moving parts, hardware, bulk, unsightliness, and thickness found in existing in-line controls for cords. At the same time, the cost to manufacture the in-line controls is reduced because there are no extra hardware controls that must be electrically connected. Furthermore, the controller can be implemented to detect different types of touches to the capacitive touchpoints (e.g., hard presses versus light taps, pinches, or combinations or sequences of touches) thereby increasing the total number of different functions that can be triggered from the interactive cord. In one or more implementations, the fabric cover acts as an RF shield for the cable, thereby reducing the need to manufacture the cord with a separate RF shield. Doing so further reduces the cost and complexity of manufacturing the interactive cord.

In one or more implementations, the interactive cord can be used to authenticate a user. For example, rather than using a password entered into a computing device, a touch input pattern can be provided to interactive cord that is coupled to the computing device to authenticate the user. A variety of different types of touch input patterns are contemplated, including by way of example and not limitation, tapping the capacitive touch points with a particular rhythm, touching absolute positions of capacitive touchpoints on the fabric cover, touching relative positions of capacitive touchpoints on the fabric cover, applying a particular amount of pressure to the capacitive touchpoints on the fabric cover, sliding from one capacitive touchpoint to another capacitive touchpoint, touching multiple capacitive touchpoints at substantially the same time, or causing one capacitive touchpoint to touch one or more other capacitive touchpoints.

This method of authentication adds an increased level of security to the interactive cord. Furthermore, since this type of authentication is unexpected, it is less likely to be compromised by adversaries and those with malicious intent. For example, a bystander would have a low probability of recognizing and repeating the authentication sequence provided to the interactive cord.

In one or more implementations, the fabric cover of the interactive cord includes conductive threads that form a “touchpad”. The touchpad can sense taps, touches, and holds, as well as various gestures, such as swiping up, down, left, or right on the fabric cover of the interactive cord. To form a touchpad on the fabric cover, the conductive threads are braided around the cable in at least two different directions to form crossing sensing lines. For example, one or more first conductive threads are braided in a first direction around cable, and one or more second conductive threads are braided around cable in a second direction that crosses the first direction. As described throughout, the controller is configured to detect touch input to the fabric cover, and to initiate one or more functions based on the touch input.

Example Environment

FIG. 1 is an illustration of an example environment 100 in which techniques using, and objects including, an interactive cord may be implemented. Environment 100 includes an interactive cord 102, which is illustrated as a cord for a headset. While interactive cord 102 will be described as a cord for a headset, such as earbuds or headphones, it is to be noted that interactive cord 102 may be utilized for various different types of uses, such as cords for appliances (e.g., lamps or fans), USB cords, SATA cords, data transfer cords, power cords, or any other type of cord that is used to transfer data or media.

Consider, for example, FIG. 2 which illustrates additional environments in which interactive cord 102 can be implemented. At an environment 200, interactive cord 102 is implemented as a data transfer cord configured to transfer data (e.g., media files) between a computer 202 and a mobile device 204. In this example, interactive cord 102 may be configured to receive touch input usable to initiate the transfer, or pause the transfer, of data between computer 202 and mobile device 204.

As another example, at an environment 206, interactive cord 102 is illustrated as a power cord for a lamp 208. In this example, interactive cord 102 may be configured to receive touch input usable to turn on and off the lamp and/or to adjust the brightness of the lamp.

Returning to FIG. 1, interactive cord 102 includes a fabric cover 104 which is configured to cover a cable 106 of interactive cord 102. In FIG. 1, a cutaway shows an example of fabric cover 104 and cable 106 beneath the cover. In this example, cable 106 is configured to communicate audio data to headset. In other implementations, however, cable 106 is can be implemented to transfer power, data, and so forth.

Instead of using separate hardware controls, fabric cover 104 is configured to sense touch input using capacitive sensing. To do so, fabric cover 104 includes one or more conductive threads 108 that are woven, braided, or otherwise integrated with the fabric of fabric cover 104. Generally, conductive thread 108 corresponds to thread that is flexible, but includes a wire that changes capacitance in response to human input. For example, when a finger of a user's hand approaches conductive thread 108, the finger causes the capacitance of conductive thread 108 to change.

Consider, for example, FIG. 3 which illustrates an example 300 of conductive thread 108 in accordance with one or more implementations. In this example, conductive thread 108 includes a conductive wire 302 that is combined with one or more flexible threads 304. Conductive wire 302 may be combined with flexible threads 304 in a variety of different ways, such as by twisting flexible threads 304 with conductive wire 302, wrapping flexible threads 304 with conductive wire 302, braiding or weaving flexible threads 304 to form a cover that covers conductive wire 302, and so forth. Conductive wire 302 may be implemented using a variety of different conductive materials, such as copper, silver, gold, aluminum, or other materials coated with a conductive polymer. Flexible thread 304 may be implemented as any type of flexible thread or fiber, such as cotton, wool, silk, nylon, polyester, and so forth.

Combining conductive wire 302 with flexible thread 304 causes conductive thread 108 to be flexible and stretchy, which enables conductive thread 108 to be easily woven with one or more non-conductive threads 110 (e.g., cotton, silk, or polyester) to form fabric cover 104. Alternately, in at least some implementations, fabric cover 104 can be formed using only conductive threads 108.

To enable fabric cover 104 to sense touch input, the fabric cover is constructed with one or more capacitive touchpoints 112. As described herein, capacitive touchpoints 112 correspond to positions on fabric cover 104 that will cause a change in capacitance to conductive thread 108 when a user's finger touches, or comes in close contact with, capacitive touchpoint 112.

In one or more implementations, the weave pattern of fabric cover 104 exposes conductive thread 108 at the capacitive touchpoints 112. In FIG. 1, for example, conductive thread 108 is exposed at capacitive touchpoints 112, but is otherwise not visible. In some implementations, two or more conductive threads 108 may be substantially parallel to each other at capacitive touchpoints 112, but twisted together at other areas of fabric cover 104. The various ways in which capacitive touchpoints 112 can be integrated within fabric cover 104 are discussed in greater detail, below, with regards to FIG. 4.

In one or more implementations, capacitive touchpoints 112 are formed with a visual or tactile cue to enable the user to easily recognize the location of the capacitive touchpoint 112. In FIG. 1, for instance, conductive threads 108 are shown as being a different color (black) than the non-conductive threads 110 (white), thereby providing a visual cue to the user as to where the capacitive touchpoint is located.

In environment 100, interactive cord 102 includes earbuds 114 and a connector 116 that is configured to be plugged into a computing device 118. Computing device 118 is illustrated as a mobile phone, but may also be configured as a desktop computer, a laptop computer, a tablet device, a wearable device, and so forth. Thus, computing device 118 may range from full resource devices with substantial memory and processor resources (e.g., personal computers, game consoles) to low-resource devices with limited memory and/or processing resources (e.g., mobile devices).

Computing device 118 is illustrated as including a controller 120 which is representative of functionality to sense touch input to capacitive touchpoints 112 of interactive cord 102, and to trigger various functions based on the touch input. For example, when interactive cord 102 is implemented as a cord for a headset, controller 120 can be configured to, in response to touch input to capacitive touchpoints 112, start playback of audio to the headset, pause audio, skip to a new audio file, adjust the volume of the audio, and so forth. In FIG. 1 controller 120 is illustrated as being implemented at computing device 118, however, in alternate implementations, controller 120 may be integrated within interactive cord 102, or implemented with another device, such as powered headphones, a lamp, a clock, and so forth.

Having discussed an example environment 100 in which interactive cord 102 may be implemented, consider now a more-detailed discussion of fabric cover 104.

Fabric cover 104 may be formed in a variety of different ways. In one or more implementations, the weave pattern of fabric cover 104 causes conductive threads 108 to be exposed at capacitive touchpoints 112, but covered and hidden from view at other areas of fabric cover 104.

Consider, for example, FIG. 4 which illustrates examples 400 of fabric cover 104 in accordance with one or more implementations. In a first example, at 402, fabric cover 104 includes a single conductive thread, or single set of conductive threads 108, woven with non-conductive threads 110, to form capacitive touchpoints 112. Notably, the one or more conductive threads 108 correspond to a first color (black) which is different than a second color (white) of non-conductive threads 110 woven into the fabric cover.

In this example, the weave pattern of fabric cover 104 exposes conductive thread 108 at capacitive touchpoints 112 along fabric cover 104. However, conductive thread 108 is covered and hidden from view at other areas of fabric cover 104. Touch input to any of capacitive touchpoints 112 causes a change in capacitance to conductive thread 108, which may be detected by controller 120. However, touch input to other areas of fabric cover 104 formed by non-conductive thread 110 does not cause a change in capacitance to conductive thread 108.

In one or more implementations, fabric cover 104 includes at least a first conductive thread 108 and a second conductive thread 108. The first conductive thread 108 is substantially parallel to the second conductive thread at one or more capacitive touchpoints 112 of fabric cover 104, but twisted with second conductive thread 108 at other areas of fabric cover 104. Capacitive touchpoints 112 are formed at the areas of fabric cover 104 at which the first and second conductive threads are parallel to each other because bringing a finger close to capacitive touchpoints 112 will cause a difference in capacitance that can be detected by controller 120. However, in the regions where conductive threads 108 are twisted, the closeness of the finger to conductive threads 108 has equal effect on the capacitance of both conductive threads 108, which avoids false triggering if the user touches the conductive thread 108. Notably, therefore, conductive thread 108 may not need to be covered by non-conductive thread 110 in this implementation.

Visual cues can be formed within fabric cover 104 to provide an indication to the user as to where to touch interactive cord 102 to initiate various functions. In one or more implementations, conductive threads 108 correspond to one or more first colors which are different than one or more second colors of non-conductive threads 110 woven into fabric cover 104. For example, at 402, the color of conductive thread 108 is black, whereas the remainder of the fabric cover is white, which enables the user to recognize where to touch fabric cover 104. Alternately or additionally, the one or more conductive threads 108 can be woven into fabric cover 104 to create one or more tactile capacitive touchpoints by knitting or weaving of the thread to create a tactile cue that can be felt by the user. For example, capacitive touchpoints 112 can be formed to protrude slightly from fabric cover 104 in a way that can be felt by the user when touching interactive cord 102.

In the example fabric cover 104 illustrated at 402, controller 120 is able to detect touch input to the various capacitive touchpoints 112. However, controller 120 may be unable to distinguish touch input to a first capacitive touchpoint 112 from touch input to a second, different, capacitive touchpoint 112. In this implementation, therefore, the number of functions that can be triggered using interactive cord 102 is limited.

However, capacitive touchpoints 112 that are electrically distinct can be made by incorporating multiple sets of conductive threads 108 into fabric cover 104 to create multiple different capacitive touchpoints 112 which can be distinguished by controller 120. For example, fabric cover 104 may include one or more first conductive threads 108 and one or more second conductive threads 108. The one or more first conductive threads 108 can be woven into fabric cover 104 such that the one or more first conductive threads 108 are exposed at one or more first capacitive touchpoints 112, and the one or more second conductive threads 108 can be woven into fabric cover 104 such that the one or more second conductive threads 108 are exposed at one or more second capacitive touchpoints 112. Doing so enables controller 120 to distinguish touch input to the one or more first capacitive touchpoints 112 from touch input to the one or more second capacitive touchpoints 112.

As an example, at 404 fabric cover 104 is illustrated as including multiple electrically distinct capacitive touchpoints 112, which are visually distinguished from each other by using threads of different colors and/or patterns. For example, a first set of conductive thread is colored black with dots to form capacitive touchpoints 112-1, a second set of conductive thread is gray with dots to form capacitive touchpoints 112-2, and a third set of conductive thread is colored white with dots to form capacitive touchpoints 112-3. The weaving pattern of fabric cover 104 surfaces capacitive touchpoints 112-1, 112-2, and 112-3 at regular intervals along fabric cover 104 of interactive cord 102.

In this case, each of the different capacitive touchpoints 112-1, 112-2, and 112-3 may be associated with a different function. For example, the user may be able to touch capacitive touchpoint 112-1 to trigger a first function (e.g., playing or pausing a song), touch capacitive touchpoint 112-2 to trigger a second function (e.g., adjusting the volume of the song), and touch capacitive touchpoint 112-3 to trigger a third function (e.g., skipping to a next song).

In some cases, a combination, sequence, or pattern of touches to capacitive touchpoints 112 may trigger different functions. For example, the user may be able to touch capacitive touchpoints 112-1 and 112-2 at the same time in order to trigger a fourth function (e.g., fast forwarding the song).

Fabric cover 104 can be formed using a variety of different weaving or braiding techniques. In example 404, fabric cover 104 is formed by weaving the one or more conductive threads into fabric cover 104 using a loop braiding technique. Doing so causes the one or more capacitive touchpoints to be formed by one or more split loops. In example 404, fabric cover 104 includes 3 different split loops, one for each of the three different types of conductive threads to form capacitive touchpoints 112-1, 112-2, and 112-3. The split loops are placed at particular locations in the pattern to provide isolation between the conductive threads and align them in a particular way. Doing so produces a hollow braid in mixed tabby, and 3/1 twill construction. This gives columns (“wales”) along the length of the braid which exposes lengths of the different fibers. This pattern ensures that each of the conductive threads 108 are in an isolated conductive area, which enables controller 120 to easily detect which conductive thread 108 is being touched, and which is not, at any given time.

Audio signals are particularly vulnerable to RF interference. Thus, cords for headsets, cable TV, and other types of audio/visual wiring often contain foil or stranded wire wrapped around the signal conductors to protect the signal from radio frequency interference and to provide an electrical ground. Headset cords and other media cords also often have a woven fabric outer layer to provide some physical protection to the electrical cords, to help avoid tangling, and to improve the feel and appearance of the wires.

Thus, in one or more implementations, fabric cover 104 acts as an RF shield for cable 106, thereby reducing the need to manufacture interactive cord 102 with a separate RF shield. In addition, fabric cover 104 creates an attractive and protective covering for interactive cord 102 that also helps to prevent tangling.

Having discussed various examples of fabric cover 104, consider now a more-detailed discussion of how controller 120 detects touch input to fabric cover 104 to trigger various functions.

Generally, controller 120 is configured to monitor the one or more conductive threads 108 of fabric cover 104 to detect a change in capacitance to conductive threads 108 which corresponds to touch input to capacitive touchpoints 112.

FIG. 5 illustrates an example system 500 configured to detect touch input to a capacitive touchpoint of a fabric cover. In system 500, touch input 502 is provided to one or more capacitive touchpoints 112 of fabric cover 104.

By way of example, consider FIG. 6, which illustrates examples 600 of providing touch input to a fabric cover of an interactive cord in accordance with one or more implementations. At 602, a finger 604 of a user's hand provides touch input by touching a capacitive touchpoint 112 of fabric cover 104 of interactive cord 102. In some cases, the touch input can be provided by moving finger 604 close to capacitive touchpoint 112 without physically touching the capacitive touchpoint.

A variety of different types of touch input 502 may be provided. In one or more implementations, touch input 502 may correspond to a pattern or series of touches to fabric cover 104, such as by touching a first capacitive touchpoint 112 followed by touching a second capacitive touchpoint 112. In one or more implementations, different types of touch input 502 may be provided based on the amount of pressure applied to capacitive touchpoint 112. As an example, at 606 an index finger 608 and a thumb 610 of the user's hand provides touch input by pinching a capacitive touchpoint 112 of fabric cover 104. Doing so may trigger a function that is different than a function triggered by simply touching or tapping capacitive touchpoint 112. In one or more implementations, a first touch to capacitive touchpoint 112 may cause the controller 120 to generate an audible alert that lets the user know that if a second tap is provided to the same capacitive touchpoint, the touch will be registered. For example, the user might tap a capacitive touchpoint 112, and in response hear a “volume up”, indicating that this touchpoint is correlated to turning the volume up. The user may then then squeeze the same touchpoint in order to confirm the volume up command. In this way, the user is less likely to initiate the controls unintentionally.

Returning to FIG. 5, at 504 controller 120 detects a change in capacitance to conductive thread 108, associated with capacitive touchpoint 112, when touch input 502 is provided to capacitive touchpoint 112 of fabric cover 104. To sense touch input 502, controller 120 may use a capacitance meter that can detect the change in capacitance of a single conductive thread or between two conductive threads disposed parallel to each other. Generally, when a finger touches, or comes in close contact to, capacitive touchpoint 112, a capacitance is formed between the finger and the associated conductive thread 108. This capacitance may be detected by the capacitance meter of controller 120 to determine that the touch input has occurred.

Controller 120 may be implemented to detect the change in capacitance in a variety of different ways. In one or more implementations, controller 120 can be implemented to detect a change in capacitance between two conductive threads 112 woven into interactive cord 102. As described above, two conductive threads 108 can be placed parallel or interlaced to each other at capacitive touchpoints 112. In this case, one of the conductive threads 108 can be grounded and the other conductive thread 108 can be connected to the capacitance meter. Initially, the capacitance meter will measure a small baseline capacitance between the two conductive threads. However, when a finger of the user's hand touches the conductive threads at capacitive touchpoint 112, a capacitive coupling occurs with each of the conductive threads 108. In response, the capacitance meter detects a new combined capacitance which is larger than the small baseline capacitance. This change in capacitance enables controller 120 to detect touch input 502.

In one or more implementations, controller 120 can determine the amount of pressure applied to capacitive touchpoint 112, which may enable controller 120 to distinguish a light tap from a hard press or pinch. For example, if the finger is pressed harder, or if two fingers pinch capacitive touchpoint 112, the capacitance meter will detect an even greater capacitance value. Thus, controller 120 can determine whether touch input 502 corresponds to a tap or a pinch by comparing the detected capacitance to predetermined capacitance thresholds for a touch or pinch.

In one or more implementations, controller 120 can be implemented to monitor and detect the change in capacitance of a single conductive thread 108 woven into interactive cord 102. In this case, the single conductive thread 108 is not grounded. When not being touched, only a small baseline capacitance exists which may be monitored by the capacitance meter. When a user's finger comes in the vicinity of the conductive thread 108, however, a touch-input capacitance is formed between the fingertip and the conductive thread. This capacitance is electrically connected in parallel to the baseline capacitance, causing the capacitance meter to detect the touch input. Similar to when the capacitance is measured between two conductive threads, a stronger pressing will create a larger capacitance. This method may be more resistant to false touches due to moisture (e.g., rain or sweat) permeating fabric cover 104.

At 506, in response to detecting the change in capacitance, controller 120 triggers a function associated with touch input 502. Notably, controller 120 can trigger a variety of different types of functions based on the how interactive cord 102 is being utilized. For example, when interactive cord 102 corresponds to a cord for a headset, controller 120 may trigger functions such as playing audio (e.g., a song, video, audiobook file, or voice memo), pausing audio, fast forwarding audio, skipping to a next audio track, adjusting the volume of the audio, and so forth. As another example, when interactive cord corresponds to a data transfer cord, controller 120 may trigger functions such as starting the transfer of data, stopping the transfer of data, authenticating the user to enable the transfer of data, and so forth. When interactive cord 102 corresponds to a cord for an appliance (e.g., a lamp, a fan, or an alarm clock), controller 120 may trigger functions such as turning on or off the appliance, adjusting the brightness of a lamp, adjusting the speed of a fan, hitting the snooze button on an alarm clock, and so forth.

As described throughout, different functions may be mapped to different types of touch input to fabric cover 104 of interactive cord 102. In some cases, a specific function may be associated with a specific capacitive touchpoint 112. For instance, in example 404 of FIG. 4, the user may be able to touch first capacitive touchpoint 112-1 to trigger a first function (e.g., playing or pausing a song), touch second capacitive touchpoint 112-2 to trigger a second function (e.g., adjusting the volume of the song), and touch third capacitive touchpoint 112-3 to trigger a third function (e.g., skipping to a next song).

In some cases, functions may be associated with various combinations, sequences, or patterns of touch input to multiple touchpoints. For example, a function may be associated with first touching capacitive touchpoint 112-1, and then sliding the user's finger to second capacitive touchpoint 112-2.

In some cases, the function that is triggered may be based on the pressure applied to capacitive touchpoints 112. For example, a first function may be associated with tapping a capacitive touchpoint 112, and a second function may be associated with squeezing or pinching the same capacitive touchpoint.

In one or more implementations, interactive cord 102 can be used to authenticate a user. For example, rather than requiring a password to be entered into a computing device, a touch input pattern can be provided to interactive cord 102 to authenticate the user.

Consider, for example, FIG. 7 which illustrates an example system 700 for using an interactive cord to authenticate a user. In system 700, a touch input pattern 702 is provided to one or more capacitive touchpoints 112 of fabric cover 104. For example, a finger of a user's hand can provide touch input pattern 702 by touching, or moving close to, one or more capacitive touchpoint 112 of fabric cover 104 of interactive cord 102. Touch input pattern 702 may be provided in response to a request for authentication, which may be initiated by controller 120 when interactive cord 102 is plugged in to computing device 118, or any time that computing device 118 is locked.

At 704, controller 120 recognizes the touch input pattern by detecting a change in capacitance to conductive thread 108, associated with the one or more capacitive touchpoints 112 of fabric cover 104. Controller 120 can detect the change in capacitance using similar techniques as those described above with regards to FIGS. 5 and 6.

At 706, controller 120 compares the detected touch input pattern 702 to a stored touch authentication pattern associated with an authenticated user state, and at 708, controller 120 authenticates the user if the detected touch input pattern 702 matches the stored touch authentication pattern. For example, the user may have previously provided touch authentication pattern to controller 120 by providing touch input to fabric cover 104 of interactive cord 102. Thus, controller 120 determines whether the detected touch input pattern 702 matches the stored touch authentication pattern. If controller 120 determines a match, then the user is authenticated. In one more implementations, the user may remain authenticated until expiration of a timeout, removal of interactive cord 102 from computing device 118, or by removing interactive cord 102 from the body (e.g., removing earbuds from the user's ear).

Controller 120 is configured to recognize a variety of different types of touch input patterns 702. In one or more implementations, touch input pattern 702 includes tapping one or more capacitive touchpoints 112 with a particular rhythm. For example, the user can tap one or more capacitive touchpoints 112 with a specific rhythm, such as a rhythm corresponding to a certain beat or song.

Alternately or additionally, touch input pattern 702 may include touching absolute positions of capacitive touchpoints 112 on fabric cover 104. For example, the user can touch multiple different ones of the capacitive touchpoints in a specific sequence. In FIG. 4, for example, the user could touch capacitive touchpoint 112-2, then capacitive touchpoint 112-1, and finally capacitive touchpoint 112-3.

Alternately or additionally, touch input pattern 702 may include touching relative positions of capacitive touchpoints 112 on fabric cover 104. For example, rather than touching specific capacitive touchpoints 112, the user could touch a first capacitive touchpoint 112, then touch a second capacitive touchpoint 112 that is positioned below the first capacitive touchpoint on fabric cover 104, and then touch a third capacitive touchpoint 112 that is positioned between the first and second capacitive touchpoints 112.

Alternately or additionally, touch input pattern 702 may include applying a particular amount of pressure to the capacitive touchpoints 112 on fabric cover 104. For example, the user could apply different types of pressure to capacitive touchpoints 112, such as by pinching the capacitive touchpoint 112.

Alternately or additionally, touch input pattern 702 may include sliding from one capacitive touchpoint 112 to another capacitive touchpoint. For instance, in FIG. 4, the user could first touch capacitive touchpoint 112-1 and then slide their finger to capacitive touchpoint 112-3 along fabric cover 104.

Alternately or additionally, touch input pattern 702 may include touching multiple capacitive touchpoints 112 at substantially the same time. For example, the user could touch specific capacitive touchpoints 112 at the same. Alternately, the user could grab interactive cord 102 with a specific handgrip that would have the effect of touching multiple different capacitive touchpoints 112.

Alternately or additionally, touch input pattern 702 may include causing one capacitive touchpoint 112 to touch one or more other capacitive touchpoints 112. For example, the user could bend interactive cord 102 such that a first capacitive touchpoint 112 makes contact with a second capacitive touchpoint 112.

Notably, the aforementioned techniques for providing touch input pattern 702 may be combined in different ways for authentication based on the level of security and/or the preferences of the user.

Interactive cord 102 may be used to authenticate the user in a variety of different scenarios. When interactive cord 102 is implemented as a cord for a headset, touch input pattern 702 may be used to authenticate the user to listen to audio using the headset. For example, assume that a user of a smart phone wishes to access audio of a sensitive internal meeting. In this case, when interactive cord 102 is implemented as a cord for a headset that is plugged into the smart phone, a touch input pattern 702 can be required to log in to a secure area of the mobile phone which contains the sensitive audio. As another example, users often need to backup or copy sensitive data from one device to another. In this scenario, interactive cord 102 may be implemented as a data transfer cord that prevents unauthorized copying of data. Thus, in order to copy data from one device to another, the user would need to provide the correct touch input pattern 702 to the data transfer cord. As another example, parents often want to prevent their children from accessing stored or live media. In this scenario, the user could be unable to access certain stored or live media without providing the correct touch input pattern to interactive cord 102 of their headphones or earbuds.

Touchpad

In one or more implementations, fabric cover 104 of interactive cord 102 includes conductive threads 108 that form a “touchpad” on the interactive cord 102. The touchpad can sense taps, touches, and holds, as well as various gestures, such as swiping up, down, left, or right on the fabric cover 104 of interactive cord 102. Notably, a conventional capacitive touchpad includes isolated horizontal and vertical lines, each of which is sensed separately for coupling between the user's finger and ground.

Similarly, to form a touchpad on fabric cover 104, the conductive threads 108 are braided around the cable 106 in at least two different directions to form crossing sensing lines. For example, one or more first conductive threads 108 are braided in a first direction around cable 106, and one or more second conductive threads 108 are braided around cable 106 in a second direction that crosses the first direction.

In one or more implementations, the one or more first conductive threads 108 are braided around cable 106 in an “S” direction, while one or more second conductive threads 108 are braided around cable 106 in the “Z” direction. As an example, consider FIG. 8 which illustrates an example 800 of a fabric cover that includes a touchpad. At 802, a first conductive thread 108 is braided around the cable in the “S” direction. Note that this direction is referred to as the “S” direction because the conductive thread 108 resembles the “diagonal” of the letter “S”. At 804, a second conductive thread 108 is braided around the cable in the “Z” direction. Note that this direction is referred to as the “Z” direction because the conductive thread resembles the “diagonal” of the letter “Z”.

Thus, a touchpad can be formed on cover 104 by braiding conductive threads 108 in both the “S” and “Z” directions such that the S and Z conductive threads cross each other thereby creating the equivalent of a touchpad wrapped around the cable 106. As an example, at 806, a fabric cover 104 is illustrated which has six conductive threads 108 braided around cable 106 in the S direction, and 4 conductive threads braided around cable 106 in the Z direction. As another example, at 808, a fabric cover 104 is illustrated which has 4 conductive threads braided around the cover in the S direction, and 4 conductive threads braided around the cover in the Z directions. Of course, different combinations of S and Z conductive threads may be braided around cable 106 to form a touchpad on fabric cover 104.

Controller 120 can be implemented with circuitry that is configured to determine the location of the touch-input on the fabric cover 104, as well as motion of the touch-input. When an object, such as a user's finger, touches fabric cover 104, the position of the touch can be determined by controller 120 by detecting a change in capacitance on the crossing conductive threads 108 that are touched. For example, controller 120 can detect a change in capacitance on both the S and Z conductive threads. Then, controller 120 uses the intersection of the crossing conductive threads 108 that are touched to determine the position of the touch-input on the fabric cover 104. In this way, controller 120 can detect various gestures to fabric cover 104, such as single-finger touches (e.g., touches, taps, and holds), multi-finger touches (e.g., two-finger touches, two-finger taps, two-finger holds, and pinches), single-finger and multi-finger swipes (e.g., swipe up, swipe down, swipe left, swipe right), and full-hand interactions (e.g., grabbing or touching the fabric cover with a user's entire hand, palm touches, and rolling, twisting, or rotating the cord in the user's hand while touching the fabric cover).

In one or more implementations, controller 120 is configured to interpolate readings on the different crossing conductive threads. Due to the small size of the threads and the closeness of the crossing threads to each other, the touch-input may cause a change in capacitance on multiple conductive threads 108 of fabric cover 104. However, controller 120 can determine the center of where the user's finger is touching by interpolating the readings from each of the touched conductive threads 108.

To do so, controller 120 can interpolate the readings on the different conductive threads. For example, the controller 120 continually calibrates the capacitances each conductive thread 108 is “seeing” when no touch is present. When a distinct change is registered, indicating a touch, the relative change in capacitances registered on the conductive threads 108 can be compared. If two conductive threads register approximately equal changes, the touch is likely halfway between the conductive threads. Similarly, if one thread's change is twice that of the other thread, then the touch is two thirds of the distance from the conductive thread 108 with the weaker change to the one with the stronger change.

For example, suppose in the S direction, the changes in capacitance correspond to values of 00, 70, 100, 30, 00 for “S” conductive threads 1-5, respectively. From these readings, controller 120 can determine that the user's finger is over threads 2, 3, and 4 but is positioned more towards thread 2 than 4. Controller 120 can use this same type of interpolation for the “Z” direction conductive threads.

In addition, controller 120 may be implemented to detect information about the size and shape of the touches, which can be used to infer relative pressure (for pinching) and rolling of the finger around the interactive cord 102. In some cases, because the S and Z conductive threads 108 are woven so closely together, a two electrode sensing method may also be used to detect the touch input. Or, the controller 120 can switch between the one and two electrode sensing methods to refine the estimate of the position and shape of the touches.

When fabric cover 104 is formed with multiple conductive threads in both the S and Z directions (e.g., 12 conductive threads in each direction), the braid will repeat itself every inch or so. Thus, there is ambiguity as to where on fabric cover 104 of interactive cord 102 the touch is occurring. This ambiguity can be resolved using reflectometry. For example, Wimmer, R. and Baudisch, P., Modular and Deformable Touch-Sensitive Surfaces Based on Time Domain Reflectometry, discuss how to use reflectometry to determine the location of a touch on single or multiple lines. A similar technique can be used to determine the position of the touch-input on the crossing conductive threads 108 of fabric cover 104. In addition, as discussed throughout, tactile clues may be provided in the fabric cover 104 to enable the user to “feel” which part of the fabric cover 104 the user is touching without actually looking at the interactive cord 102.

Example Methods

FIGS. 9, 10, and 11 illustrate an example method 900 (FIG. 9) of triggering a function based on touch input to a capacitive touchpoint of an interactive cord, an example method 1000 (FIG. 10) of controlling audio to a headset based on touch input to an interactive cord of the headset, and an example method 1100 (FIG. 11) of authenticating a user based on a touch input pattern provided to an interactive cord. These methods and other methods herein are shown as sets of blocks that specify operations performed but are not necessarily limited to the order or combinations shown for performing the operations by the respective blocks. The techniques are not limited to performance by one entity or multiple entities operating on one device.

FIG. 9 illustrates an example method 900 of triggering a function based on touch input to a capacitive touchpoint of an interactive cord.

At 902, touch input to a capacitive touchpoint of an interactive cord is detected. For example, controller 120 (FIG. 1) detects touch input 502 to capacitive touchpoint 112 of interactive cord 102 when an object, such as a user's finger, touches capacitive touchpoint 112.

At 904, a function associated with the capacitive touchpoint is determined. For example, controller 120 determines a function associated with the capacitive touchpoint 112 that received the touch input at step 802.

At 906, the function is triggered. For example, controller 120 triggers the function determined at step 904.

FIG. 10 illustrates an example method 1000 of controlling audio to a headset based on touch input to an interactive cord of the headset.

At 1002, a capacitance of one or more conductive threads woven into an interactive cord of a headset is monitored. For example, controller 120 monitors a capacitance of one or more conductive threads 108 woven into a fabric cover 104 of interactive cord 102.

At 1004, a change in capacitance to the one or more conductive threads is detected. For example, controller 120 detects a change in the capacitance of the one or more conductive threads 108.

At 1006, it is determined that the change in capacitance corresponds to touch input to the interactive cord. For example, controller 120 determines that the change in capacitance detected at step 1004 corresponds to touch input 502 to interactive cord 102.

At 1008, audio to the headset is controlled based on the touch input. For example, controller 120 controls audio to a headset based on touch input 502.

FIG. 11 illustrates an example method 1000 of authenticating a user based on a touch input pattern provided to an interactive cord.

At 1102, a touch input pattern to one or more capacitive touchpoints of a fabric cover of an interactive cord is detected. For example, controller 120 detects touch input pattern 702 to one or more capacitive touchpoints 112 of a fabric cover 104 of interactive cord 102. A variety of different types of touch input patterns are contemplated, including by way of example and not limitation, tapping the capacitive touch points with a particular rhythm, touching absolute positions of capacitive touchpoints on the fabric cover, touching relative positions of capacitive touchpoints on the fabric cover, applying a particular amount of pressure to the capacitive touchpoints on the fabric cover, sliding from one capacitive touchpoint to another capacitive touchpoint, touching multiple capacitive touchpoints at substantially the same time, or causing one capacitive touchpoint to touch one or more other capacitive touchpoints.

At 1104, the touch input pattern is compared to a stored authentication pattern. For example controller 120 compares touch input pattern 702, detected at step 1102, to a stored touch authentication pattern. The stored touch authentication pattern may have bene previously provided by the user.

At 1106, a user is authenticated if the touch input pattern matches the stored authentication pattern. For example, controller 120 authenticates the user if touch input pattern 702, detected at step 1102, matches the stored authentication pattern.

Example Computing System

FIG. 12 illustrates various components of an example computing system 1200 that can be implemented as any type of client, server, and/or computing device as described with reference to the previous FIGS. 1-11 to implement interactive cord. In embodiments, computing system 1200 can be implemented as one or a combination of a wired and/or wireless wearable device, System-on-Chip (SoC), and/or as another type of device or portion thereof. Computing system 1200 may also be associated with a user (e.g., a person) and/or an entity that operates the device such that a device describes logical devices that include users, software, firmware, and/or a combination of devices.

Computing system 1200 includes communication devices 1202 that enable wired and/or wireless communication of device data 1104 (e.g., received data, data that is being received, data scheduled for broadcast, data packets of the data, etc.). Device data 1204 or other device content can include configuration settings of the device, media content stored on the device, and/or information associated with a user of the device. Media content stored on computing system 1200 can include any type of audio, video, and/or image data. Computing system 1200 includes one or more data inputs 1206 via which any type of data, media content, and/or inputs can be received, such as human utterances, touch data generated by interactive cord 102, user-selectable inputs (explicit or implicit), messages, music, television media content, recorded video content, and any other type of audio, video, and/or image data received from any content and/or data source.

Computing system 1200 also includes communication interfaces 1208, which can be implemented as any one or more of a serial and/or parallel interface, a wireless interface, any type of network interface, a modem, and as any other type of communication interface. Communication interfaces 1208 provide a connection and/or communication links between computing system 1200 and a communication network by which other electronic, computing, and communication devices communicate data with computing system 1200.

Computing system 1200 includes one or more processors 1210 (e.g., any of microprocessors, controllers, and the like), which process various computer-executable instructions to control the operation of computing system 1200 and to enable techniques for, or in which can be embodied, interactive cord. Alternatively or in addition, computing system 1200 can be implemented with any one or combination of hardware, firmware, or fixed logic circuitry that is implemented in connection with processing and control circuits which are generally identified at 1212. Although not shown, computing system 1200 can include a system bus or data transfer system that couples the various components within the device. A system bus can include any one or combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and/or a processor or local bus that utilizes any of a variety of bus architectures.

Computing system 1200 also includes computer-readable media 1214, such as one or more memory devices that enable persistent and/or non-transitory data storage (i.e., in contrast to mere signal transmission), examples of which include random access memory (RAM), non-volatile memory (e.g., any one or more of a read-only memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device. A disk storage device may be implemented as any type of magnetic or optical storage device, such as a hard disk drive, a recordable and/or rewriteable compact disc (CD), any type of a digital versatile disc (DVD), and the like. Computing system 1200 can also include a mass storage media device 1216.

Computer-readable media 1214 provides data storage mechanisms to store device data 1204, as well as various device applications 1218 and any other types of information and/or data related to operational aspects of computing system 1200. For example, an operating system 1220 can be maintained as a computer application with computer-readable media 1214 and executed on processors 1210. Device applications 1218 may include a device manager, such as any form of a control application, software application, signal-processing and control module, code that is native to a particular device, a hardware abstraction layer for a particular device, and so on.

Device applications 1218 also include any system components, engines, or managers to implement interactive cord. In this example, device applications 1218 include controller 120.

Conclusion

Although embodiments of techniques using, and objects including, interactive cord have been described in language specific to features and/or methods, it is to be understood that the subject of the appended claims is not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as example implementations of interactive cord. 

What is claimed is:
 1. An interactive cord comprising: a cable; and a fabric cover that covers the cable, the fabric cover comprising a plurality of conductive threads woven into the fabric cover to form one or more capacitive touchpoints, the plurality of conductive threads comprising at least first and second conductive threads that are positioned substantially parallel to one another at the one or more capacitive touchpoints of the fabric cover and twisted together at non-capacitive-touchpoints areas of the fabric cover, the capacitive touchpoints configured to enable reception of touch input that causes a change in capacitance to the at least first and second conductive threads, the change in capacitance effective to trigger one or more functions associated with the one or more capacitive touchpoints.
 2. The interactive cord of claim 1, wherein the plurality of conductive threads are woven into the fabric cover such that the one or more of the plurality of conductive threads are exposed at the one or more capacitive touchpoints and covered at the non-capacitive-touchpoints areas of the fabric cover.
 3. The interactive cord of claim 1, wherein the fabric cover comprises a first set of conductive threads and a second set of conductive threads, the first set of conductive threads woven into the fabric cover such that the first set of conductive threads are exposed at one or more first capacitive touchpoints, and the second set of conductive threads woven into the fabric cover such that the second set of conductive threads are exposed at one or more second capacitive touchpoints.
 4. The interactive cord of claim 3, wherein a controller, when coupled to the interactive cord, is configured to distinguish touch input to the one or more first capacitive touchpoints from touch input to the one or more second capacitive touchpoints, the controller implemented at one of the interactive cord or a computing device coupled to the interactive cord.
 5. The interactive cord of claim 1, wherein the plurality of conductive threads comprise one or more first colors, the one or more first colors different than one or more second colors of non-conductive threads woven into the fabric cover.
 6. The interactive cord of claim 1, wherein the plurality of conductive threads are woven into the fabric cover to create one or more tactile capacitive touchpoints.
 7. The interactive cord of claim 1, wherein the fabric cover provides RF shielding for the cable of the interactive cord.
 8. The interactive cord of claim 1, wherein the interactive cord comprises a cord for ear buds or headphones.
 9. The interactive cord of claim 1, wherein the interactive cord comprises a data transfer cord or a power cord.
 10. The interactive cord of claim 1, wherein each of the plurality of conductive threads comprises a conductive wire and one or more flexible threads, the conductive wire comprising one of a copper wire, a gold wire, an aluminum wire, or a silver wire, and the one or more flexible threads comprising one or more cotton threads, wool threads, silk threads, nylon threads, or polyester threads.
 11. The interactive cord of claim 1, wherein the one or more non-capacitive-touchpoint areas of the fabric cover include the at least first and second conductive threads twisted together to enable reception of an additional touch input that causes an equal effect on the capacitance of the at least first and second conductive threads, the equal effect on the capacitance effective to avoid false triggering of the one or more functions.
 12. The interactive cord of claim 1, wherein the non-capacitive-touchpoint areas of the fabric cover include non-conductive thread covering the twisted at least first and second conductive threads.
 13. A method comprising: monitoring a capacitance of a plurality of conductive threads woven into an interactive cord of a headset, the plurality of conductive threads woven into the interactive cord to form one or more capacitive touchpoints, a first conductive thread of the plurality of conductive threads positioned substantially parallel to a second conductive thread of the plurality of conductive threads at the one or more capacitive touchpoints, the first conductive thread twisted with the second conductive thread at non-capacitive-touchpoint areas of the fabric cover; detecting a change in capacitance of the first conductive thread or the second conductive thread; determining that the change in capacitance corresponds to touch input to the interactive cord; and controlling audio to the headset based on the touch input.
 14. The method of claim 13, wherein the controlling audio further comprises initiating a first audio function if the touch input is received at a first capacitive touchpoint, and initiating a second audio function if the touch input is received at a second capacitive touchpoint.
 15. The method of claim 13, wherein the controlling audio further comprises one or more of playing the audio, pausing the audio, adjusting the volume of the audio, skipping ahead in the audio, skipping backwards in the audio, or skipping to additional audio.
 16. The method of claim 13, wherein the detecting a change in the capacitance of the first conductive thread or the second conductive thread comprises detecting a change in capacitance between the first conductive thread and the second conductive thread.
 17. A system comprising: an interactive cord comprising a cable and a fabric cover that covers the cable, the fabric cover comprising a first set of conductive threads braided around the cable in a first direction and a second set of conductive threads braided around the cable in a second direction that crosses the first direction, the first set of conductive threads including a first conductive thread and a second conductive thread, the first conductive thread being substantially parallel with the second conductive thread at one or more capacitive touchpoints of the fabric cover and twisted with the second conductive thread at one or more non-capacitive-touchpoint areas of the fabric cover; and a controller coupled to the interactive cord, the controller configured to detect touch input to the one or more capacitive touchpoints of the fabric cover, and to initiate one or more functions based on the touch input.
 18. The system of claim 17, wherein the controller is configured to detect the touch input to the one or more capacitive touchpoints of the fabric cover by detecting a change in capacitance of each of the first conductive thread and the second conductive thread.
 19. The system of claim 17, wherein the first direction comprises an “S” direction, and wherein the second direction comprises a “Z” direction.
 20. The system of claim 17, wherein the first set of conductive threads and the second set of conductive threads are woven into the fabric cover such that the first conductive thread and the second conductive thread are exposed at the one or more capacitive touchpoints and covered at the non-capacitive-touchpoint areas of the fabric cover. 